如果利用POST來傳送表單內容,相對GET來說會安全許多!
上面只是相對來說,
但如果我們真正要做的話,
我們是不是就要將密碼加密呢?
不要利用明碼的方式儲存在資料庫,這樣比較安全~
我們在網路上能看到很多雜湊方式,那其中那些又是推薦使用的呢?
最常看到得雜湊方式應該是md5了吧!
雖然我們知道md5是擁有不可逆的,但是安全嗎?
我們看看來自wiki的資料
MD5訊息摘要演算法
1996年後被證實存在弱點,可以被加以破解
以上我們也簡單討論帶過關於MD5的內容
以前啊我們要用MD5雜湊時,我們是不是使用MD5()這個函式來做雜湊,
但因為現在雜湊的方式越來越多種了,所以PHP就用了一個hash函式
方便使用者調用~
我們來介紹PHP內的hash()函式吧!
那我們該如何知道hash函式內包含哪些演算法呢?
我們可以從PHP的官方網站的hash_algos頁面
我們可以看到裡面包含的演算法有高達46種!
像是常見的MD5、SHA256等等的都有包含在hash函式裡面
    [0] => md2
    [1] => md4
    [2] => md5
    [3] => sha1
    [4] => sha224
    [5] => sha256
    [6] => sha384
    [7] => sha512
    [8] => ripemd128
    [9] => ripemd160
    [10] => ripemd256
    [11] => ripemd320
    [12] => whirlpool
    [13] => tiger128,3
    [14] => tiger160,3
    [15] => tiger192,3
    [16] => tiger128,4
    [17] => tiger160,4
    [18] => tiger192,4
    [19] => snefru
    [20] => snefru256
    [21] => gost
    [22] => gost-crypto
    [23] => adler32
    [24] => crc32
    [25] => crc32b
    [26] => fnv132
    [27] => fnv1a32
    [28] => fnv164
    [29] => fnv1a64
    [30] => joaat
    [31] => haval128,3
    [32] => haval160,3
    [33] => haval192,3
    [34] => haval224,3
    [35] => haval256,3
    [36] => haval128,4
    [37] => haval160,4
    [38] => haval192,4
    [39] => haval224,4
    [40] => haval256,4
    [41] => haval128,5
    [42] => haval160,5
    [43] => haval192,5
    [44] => haval224,5
    [45] => haval256,5
好看到了那麼多種,我們利用其中幾種作示範
例如我們要使用MD5將email進行雜湊
我們可以這樣寫
<?php
    $hashget = hash('MD5', '你的email');
    echo $hashget;
?>
我們可以一起實作看看
http://sandbox.onlinephpfunctions.com/
在網頁上我們將程式碼打好,下方有一個
Execute Code按下去,他就會執行我們上面所寫的程式碼!
我們程式執行後的結果,我們可以知道得到了一大串英數字~
這些就能用來代替我們所設定的密碼登入呢!
那如果我們使用SHA256來進行雜湊呢?
會出現甚麼呢?
有沒有邦友能夠解出這題的答案呢XDDDDD
留言區開放留言!
<?php
    $hashget = hash('SHA256', 'test@nanado.com.tw');
    echo $hashget;
?>
當我們要做登入系統時,我們能將密碼+**裝置獨一無二的ID(假設)**進行SHA256雜湊,
得到一串英數字,那這樣是不是就只能透過某一台裝置+正確帳號密碼才能登入呢?
答案下篇揭曉~